package com.gitee.zycra.union.api.common.vo;

import com.gitee.zycra.jdbc.annotation.Column;
import com.gitee.zycra.jdbc.annotation.Table;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;

/**
 * @author zycra
 */
@Getter
@Setter
@ToString
@Accessors(chain = true)
@Table
public class InterfaceVO {

    /**
     * 接口ID
     */
    @Column("id")
    private Long id;

    /**
     * 接口名称
     */
    @Column("interface_name")
    private String interfaceName;

    /**
     * 请求类型
     *
     * @see com.gitee.zycra.union.api.common.enums.InterfaceMethodEnum
     */
    @Column("interface_method")
    private Long interfaceMethod;

    /**
     * 接口路径
     */
    @Column("interface_uri")
    private String interfaceUri;

    /**
     * 接口状态
     *
     * @see com.gitee.zycra.union.api.common.enums.InterfaceStatusEnum
     */
    @Column("interface_status")
    private Integer interfaceStatus;

    /**
     * 所在目录ID
     */
    @Column("interface_folder_id")
    private Long interfaceFolderId;

    /**
     * 目录名称
     */
    @Column("folder_name")
    private String folderName;

    /**
     * 入参类型
     *
     * @see com.gitee.zycra.union.api.common.enums.RequestParamTypeEnum
     */
    @Column("request_param_type")
    private Integer requestParamType;

    /**
     * 入参配置
     */
    @Column("request_param")
    private String requestParam;

    /**
     * 出参配置
     */
    @Column("response_param")
    private String responseParam;

    /**
     * 成功返回值示例
     */
    @Column("success_response_value")
    private String successResponseValue;

    /**
     * 失败返回值示例
     */
    @Column("fail_response_value")
    private String failResponseValue;
}
